module IPFS.Client.Utils.Types (
    LocalFile(..),
    SendFile(..),
    SendFileContent(..)
) where
import Foreign.Object as O
import Node.Buffer (Buffer)
import Node.StreamEx.Types (Readable)

data LocalFile = LocalFileBuffer Buffer | LocalFilePath String | LocalFileReadStream (Readable Buffer)

data SendFileContent = SendBuffer Buffer | SendReadable (Readable Buffer) | SendSymlink String | SendDir

type SendFile = {
 header::O.Object String,
 path::String,
 symlink::Boolean,
 dir::Boolean,
 content::SendFileContent
}